rm -f ${IMAGE_ROOTFS}/etc/rcS.d/S03udev
rm -f ${IMAGE_ROOTFS}/etc/rcS.d/*networking
- # The default fstab has /, which we don't want, and we do want /sys and /dev/shm
- cat > ${IMAGE_ROOTFS}/etc/fstab << EOF
-tmpfs /dev/shm tmpfs mode=1777,nosuid,nodev 0 0
-devpts /dev/pts devpts gid=5,mode=620 0 0
-sysfs /sys sysfs defaults 0 0
-proc /proc proc defaults 0 0
-EOF
+ # Clear out the default fstab; everything we need right now is mounted
+ # in the initramfs.
+ cat < /dev/null > ${IMAGE_ROOTFS}/etc/fstab
# Kill the Debian netbase stuff - we use NetworkManager
rm -rf ${IMAGE_ROOTFS}/etc/network
rm -f ${IMAGE_ROOTFS}/etc/init.d/networking
- ln -sf /var/run/resolv.conf ${IMAGE_ROOTFS}/etc/resolv.conf
+ # We deploy kernels via an external mechanism; the modules
+ # directory is just a bind mount to /sysroot.
+ rm -rf ${IMAGE_ROOTFS}/lib/modules
+ mkdir -p ${IMAGE_ROOTFS}/lib/modules
- # The passwd database is stored in /var.
+ # Blow away udev from poky in favor of our own
+ rm ${IMAGE_ROOTFS}/sbin/udevd
+ ln -s /usr/libexec/udevd ${IMAGE_ROOTFS}/sbin/udev
+
+ # Random configuration changes here
+ sed -i -e 's,^DESTINATION=.*,DESTINATION=\"file\",' ${IMAGE_ROOTFS}/etc/syslog.conf
+
+ # Adjustments for /etc -> {/var,/run} here
+ ln -sf /run/resolv.conf ${IMAGE_ROOTFS}/etc/resolv.conf
rm -f ${IMAGE_ROOTFS}/etc/passwd
ln -s /var/passwd ${IMAGE_ROOTFS}/etc/passwd
rm -f ${IMAGE_ROOTFS}/etc/shadow ${IMAGE_ROOTFS}/etc/shadow-
if ! test -d ${BRANCH_PREFIX}${branch}-${rev}; then
ostree --repo=repo checkout ${rev} ${BRANCH_PREFIX}${branch}-${rev}
ostbuild chroot-run-triggers ${BRANCH_PREFIX}${branch}-${rev}
- cp -ar /lib/modules/${uname} ${BRANCH_PREFIX}${branch}-${rev}/lib/modules/${uname}
fi
rm -f ${BRANCH_PREFIX}${branch}-current
ln -s ${BRANCH_PREFIX}${branch}-${rev} ${BRANCH_PREFIX}${branch}-current
EOF
exit 1
fi
+
+cp -ar /lib/modules/${uname} /ostree/modules/${uname}
+
initrd_name=initramfs-ostree-${uname}.img
initrd_tmpdir=$(mktemp -d '/tmp/gnomeos-dracut.XXXXXXXXXX')
linux-user-chroot \
--mount-bind /dev /dev \
--mount-bind /ostree/var /var \
--mount-bind ${initrd_tmpdir} /tmp \
- --mount-bind /lib/modules/${uname} /lib/modules/${uname} \
+ --mount-bind /ostree/modules /lib/modules \
/ostree/${BRANCH_PREFIX}devel-current \
dracut -f /tmp/${initrd_name} "${uname}"
mv "${initrd_tmpdir}/${initrd_name}" "/boot/${initrd_name}"